﻿using Rsd.Dudu;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Rsd.Faith.Bank
{
    internal enum ErrorCodesType
    {
        /// <summary>
        /// 存款计划(ID：{0})不存在。
        /// </summary>
        [System.ComponentModel.Description("存款计划(ID：{0})不存在。")]
        B20005 = 20005,

        /// <summary>
        /// 该计划(所属期：{0})不可核算。\r\n当前状态({1})。
        /// </summary>
        [System.ComponentModel.Description("该计划(所属期：{0})不可核算。\r\n当前状态({1})。")]
        B20006 = 20006,

        /// <summary>
        /// 该计划(所属期：{0})不可核算。\r\n当前状态({1})。
        /// </summary>
        [System.ComponentModel.Description("该计划(所属期：{0})不可核算。\r\n当前状态({1})。")]
        B20007 = 20007,

        /// <summary>
        /// 该计划(所属期：{0})当前状态({1})不可结息入账。
        /// </summary>
        [System.ComponentModel.Description("该计划(所属期：{0})当前状态({1})不可结息入账。")]
        B20008 = 20008,

        /// <summary>
        /// 该计划(所属期：{0})未到期，该操作不可执行
        /// </summary>
        [System.ComponentModel.Description("该计划(所属期：{0})未到期，该操作不可执行。")]
        B20009 = 20009,

        /// <summary>
        /// 利息核算失败：在所属期{0}({1}至{2})之前，存在未分摊使用申请。
        /// </summary>
        [System.ComponentModel.Description("利息核算失败\r\n在所属期{0}({1}至{2})之前\r\n存在未分摊的使用申请。")]
        B20010 = 20010,

        /// <summary>
        /// 利息核算失败：在所属期{0}({1}至{2})之前，在未入账使用分摊。
        /// </summary>
        [System.ComponentModel.Description("利息核算失败\r\n在所属期{0}({1}至{2})之前\r\n存在在未入账的使用分摊。")]
        B20011 = 20011,
    }

    /// <summary>
    /// 
    /// </summary>
    public static class ExtendMethod
    {

      
        /// <summary>
        /// 
        /// </summary>
        /// <param name="code"></param>
        /// <param name="args"></param>
        internal static void SubmitError(this ErrorCodesType code, params String[] args)
        { 
            ServicesContainer.GetService<Rsd.Dudu.Exception.IExceptionService>(null).Submit(code, Rsd.Dudu.Exception.OperationType.CommitAndError, args);
        }
    }
}
